package test09;

import java.io.*;
import java.util.ArrayList;

/**
 * 4. 分析以下需求，并用代码实现
 项目根路径下有个questions.txt文件内容如下：
 5+5
 150-25
 155*155
 2555/5
 要求：读取内容计算出结果，将结果写入到results.txt文件中
 5+5=10
 //....
 思考:如果说读取questions.txt文件的内容,算出计算结果,再写入questions.txt文件,即读和写的操作时针对同一个文件,应该如何操作
 */
public class TestDemo04 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new FileReader("questions.txt"));

        ArrayList<String> list = new ArrayList<>();

        String line ;
        while ((line = br.readLine())!=null){
            list.add(line);
        }

        //第一组：
        String[] split = list.get(0).split("\\+");
        int result = Integer.parseInt(split[0]) + Integer.parseInt(split[1]);
        BufferedWriter bw = new BufferedWriter(new FileWriter("questions.txt"));
        bw.write(split[0]+"+"+split[1]+"="+result);
        bw.newLine();
        bw.flush();

        String str2 = list.get(1);
        //切割这个元素
        String[] split2 = str2.split("\\-");
        //String ==> int
        int result2 = Integer.parseInt(split2[0]) - Integer.parseInt(split2[1]);
        //那我就拼字符串
        bw.write(str2+"="+result2 + "");
        bw.newLine();



        //获得集合的2号索引元素
        String str3 = list.get(2);
        //切割这个元素
        String[] split3 = str3.split("\\*");
        //String ==> int
        int result3 = Integer.parseInt(split3[0]) * Integer.parseInt(split3[1]);
        //那我就拼字符串
        bw.write(str3+"="+result3 + "");
        bw.newLine();

        //获得集合的3号索引元素
        String str4 = list.get(3);
        //切割这个元素
        String[] split4 = str4.split("\\/");
        //String ==> int
        int result4 = Integer.parseInt(split4[0]) / Integer.parseInt(split4[1]);
        //那我就拼字符串
        bw.write(str4+"="+result4 + "");
        bw.newLine();

        bw.close();
    }
}
